package cn.iocoder.yudao.module.contract.dal.dataobject.client;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 客户 DO
 *
 * @author 芋道源码
 */
@TableName("ct_client")
@KeySequence("ct_client_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ClientDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long id;
    /**
     * 客户编码
     */
    @JSONField(name="KUNNR")
    private String clientCode;
    /**
     * 客户名称
     */
    @JSONField(name="NAME")
    private String clientName;
    /**
     * 创建日期
     */
    @JSONField(name="ERDAT")
    private String createdDate;
    /**
     * 简称
     */
    @JSONField(name="SORTL")
    private String calledForShort;
    /**
     * 电话
     */
    @JSONField(name="TELF1")
    private String phone;
    /**
     * 传真
     */
    @JSONField(name="TELFX")
    private String faxes;
    /**
     * 街道
     */
    @JSONField(name="STRAS")
    private String street;
    /**
     * 法定代表
     */
    @JSONField(name="ZZFRXM")
    private String legalPerson;
    /**
     * 委托代表
     */
//    @JSONField(name="ZYP02")
    private String proxy;
    /**
     * 开户银行
     */
    @JSONField(name="ZZKHH")
    private String bankName;
    /**
     * 开户账号
     */
    @JSONField(name="ZZYHZH")
    private String bankAccount;
    /**
     * QQ
     */
    @JSONField(name="ZZQQ")
    private String qqNumber;
    /**
     * 微信
     */
    @JSONField(name="ZZWX")
    private String weChatNumber;
    /**
     * 收票地址
     */
    @JSONField(name="ZZSPDZ")
    private String collectionAddress;
    /**
     * 接收人姓名
     */
    @JSONField(name="ZZJSRXM")
    private String receiverName;
    /**
     * 接收人职务
     */
    @JSONField(name="ZZJSRZW")
    private String receiverDuty;
    /**
     * 接收人电话
     */
    @JSONField(name="ZZJSRDH")
    private String receiverPhone;
    /**
     * 列车站(销售部门)
     */
    @JSONField(name="BAHNS")
    private String bahns;
    /**
     * 快运车站(销售组)
     */
    @JSONField(name="BAHNE")
    private String bahne;
    /**
     * 信用期
     */
    @JSONField(name="ZMONTH")
    private String zmonth;
    /**
     * 街道2
     */
    @JSONField(name="STR_SUPPL1")
    private String strSuppl1;
    /**
     * 管控类型
     */
    @JSONField(name="ZZHTGKLX")
    private String zzhtgklx;
    /**
     * 管控类型描述
     */
    @JSONField(name="ZZHTGKLXMS")
    private String zzhtgklxms;
    /**
     * 街道3
     */
    @JSONField(name="STR_SUPPL2")
    private String strSuppl2;


    /**
     * 是否开启合同上传周期限制 0 未开启，1 开启
     */
    private Boolean openUploadCycle;

    /**
     * 合同上传周期限制（天）
     */
    private Integer contractUploadCycle;
}